package com.yuetong.inventory.domain;

import java.math.BigDecimal;
import java.util.List;
import com.yuetong.common.annotation.Excel;
import com.yuetong.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 库存对象 yt_inventory
 *
 * @author  卓晓君
 * @date 2025-03-21
 */
public class YtInventory extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 库存ID */
    private Long inventoryId;

    /** 关联的产品ID */
    @Excel(name = "关联的产品ID")
    private Long productId;

    /** 产品名称 */
    @Excel(name = "产品名称")
    private String productName;

    /** 产品型号 */
    @Excel(name = "产品型号")
    private String productModel;

    /** 产品单位 */
    @Excel(name = "产品单位")
    private String productUnit;

    /** 当前库存数量 */
    @Excel(name = "当前库存数量")
    private BigDecimal currentStock;

    /** 采购总额 */
    @Excel(name = "采购总额")
    private BigDecimal purchaseTotal;

    /** 库存类型 */
    @Excel(name = "库存类型")
    private String stockType;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    /** 出入库记录信息 */
    private List<YtInventoryHistory> ytInventoryHistoryList;

    public void setInventoryId(Long inventoryId)
    {
        this.inventoryId = inventoryId;
    }

    public Long getInventoryId()
    {
        return inventoryId;
    }
    public void setProductId(Long productId)
    {
        this.productId = productId;
    }

    public Long getProductId()
    {
        return productId;
    }
    public void setProductName(String productName)
    {
        this.productName = productName;
    }

    public String getProductName()
    {
        return productName;
    }
    public void setProductModel(String productModel)
    {
        this.productModel = productModel;
    }

    public String getProductModel()
    {
        return productModel;
    }
    public void setProductUnit(String productUnit)
    {
        this.productUnit = productUnit;
    }

    public String getProductUnit()
    {
        return productUnit;
    }
    public void setCurrentStock(BigDecimal currentStock)
    {
        this.currentStock = currentStock;
    }

    public BigDecimal getCurrentStock()
    {
        return currentStock;
    }
    public void setPurchaseTotal(BigDecimal purchaseTotal)
    {
        this.purchaseTotal = purchaseTotal;
    }

    public BigDecimal getPurchaseTotal()
    {
        return purchaseTotal;
    }
    public void setStockType(String stockType)
    {
        this.stockType = stockType;
    }

    public String getStockType()
    {
        return stockType;
    }
    public void setDelFlag(String delFlag)
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag()
    {
        return delFlag;
    }

    public List<YtInventoryHistory> getYtInventoryHistoryList()
    {
        return ytInventoryHistoryList;
    }

    public void setYtInventoryHistoryList(List<YtInventoryHistory> ytInventoryHistoryList)
    {
        this.ytInventoryHistoryList = ytInventoryHistoryList;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("inventoryId", getInventoryId())
                .append("productId", getProductId())
                .append("productName", getProductName())
                .append("productModel", getProductModel())
                .append("productUnit", getProductUnit())
                .append("currentStock", getCurrentStock())
                .append("purchaseTotal", getPurchaseTotal())
                .append("stockType", getStockType())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .append("delFlag", getDelFlag())
                .append("ytInventoryHistoryList", getYtInventoryHistoryList())
                .toString();
    }
}
